]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
breakManager: Make brightness setting function clearer
authorPhilip Withnall <pwithnall@gnome.org>
Wed, 2 Apr 2025 11:06:42 +0000 (12:06 +0100)
committerMarge Bot <marge-bot@gnome.org>
Fri, 11 Apr 2025 13:18:48 +0000 (13:18 +0000)
Confusingly, the `brightness` property of
`ClutterBrightnessContrastEffect` has type `CoglColor`, but the
`set_brightness()` setter takes a single `float`.

We previously chose to use the property setter everywhere for
consistency (see
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3655#note_2369353),
but didn’t realise the types don’t match.

GJS optimises `this._brightnessEffect.brightness = foo` into a call to
`clutter_brightness_contrast_effect_set_brightness()`, which means the
type mismatch between the two results in a warning (see
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8280).

So, let’s change from a property setter into an explicit method call to
avoid the type ambiguity, at the expense of a bit of clarity from using
the same method to set the initial value and each property animation
step.

Signed-off-by: Philip Withnall <pwithnall@gnome.org>
Helps: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8280
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3687>

js/misc/breakManager.js

index 371201a7a2c86c37906b104b13483f8cbee397dc..4374af2d51b90a542b2eaed6f71444326dcd245b 100644 (file)
@@ -866,13 +866,6 @@ class BreakDispatcher extends GObject.Object {
     _brightnessEffectOn() {
         // the effect value is in the range [0, 255] with 127 as the ‘no change’ mid-point
         const startVal = 127;
-        const startColor = new Cogl.Color({
-            red: startVal,
-            green: startVal,
-            blue: startVal,
-            alpha: 255,
-        });
-
         const finishVal = 127 * BRIGHTNESS_FACTOR;
         const finishColor = new Cogl.Color({
             red: finishVal,
@@ -881,7 +874,7 @@ class BreakDispatcher extends GObject.Object {
             alpha: 255,
         });
 
-        this._brightnessEffect.brightness = startColor;
+        this._brightnessEffect.set_brightness(startVal);
         this._brightnessEffect.set_enabled(true);
 
         Main.layoutManager.uiGroup.ease_property(